package jp.ac.aiit.yc.sww.database.dao;

import java.sql.CallableStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Date;
import java.util.List;
import java.util.Map;

import static jp.ac.aiit.yc.sww.constant.Constants.*;
import static jp.ac.aiit.yc.sww.util.Util.*;
import jp.ac.aiit.yc.sww.database.dto.ModeDto;
import jp.ac.aiit.yc.sww.database.dto.SwwDtoIF;
import jp.ac.aiit.yc.sww.Resources.*;

public class ModeDao extends BaseDAO implements SwwDaoIF {

	@Override
	public SwwDtoIF createDto(ResultSet rs) throws Exception {
		// TODO 自動生成されたメソッド・スタブ
		return null;
	}

	@Override
	public String getInsertSP() {
		return getSP(SwwResource.SP_MODE_EVENT);
	}

	@Override
	public String getQuerySP() {
		// TODO 自動生成されたメソッド・スタブ
		return null;
	}

	@Override
	public boolean register(SwwDtoIF dto) {
		// TODO 自動生成されたメソッド・スタブ
		return false;
	}

	@Override
	public CallableStatement setInsertParam(CallableStatement cStmt,
			SwwDtoIF dtoIF) throws Exception {
		// Mapの型指定はしない
		Map headers = getHeaders();
		// TODO データのチェックが必要
		System.out.println((new Date()).toString() + " headers.get(HEADER_USER)=" + null2String(headers.get(HEADER_USER)));
		System.out.println((new Date()).toString() + " headers.get(HEADER_ROOM)=" + null2String(headers.get(HEADER_ROOM)));
		System.out.println((new Date()).toString() + " headers.get(HEADER_MODE)=" + null2String(headers.get(HEADER_MODE)));

		cStmt.setString(1, null2String(headers.get(HEADER_USER)));
		cStmt.setString(2, null2String(headers.get(HEADER_ROOM)));
		cStmt.setInt(3, parseInt(headers.get(HEADER_MODE)));
		cStmt.setInt(4, parseInt(headers.get(HEADER_DOC)));
		cStmt.setInt(5, parseInt(headers.get(HEADER_PAGE)));

		return cStmt;
	}

	@Override
	public CallableStatement setQueryParam(CallableStatement cStmt, SwwDtoIF dtoIF)
			throws Exception {
		// TODO 自動生成されたメソッド・スタブ
		return null;
	}

}
